#
# Copyright (c) Huawei Technologies Co., Ltd. 2023-2023. All rights reserved.
#

#!/bin/bash

######################################################################
# 脚本描述：ansys_mechanical应用作业提交脚本                         #
# 注意事项：无                                                       # 
# 入参说明：$1:核数, $2:主输入文件，$3:其他文件                      #
######################################################################
# #运行方式1：【portal】                                             #
#    portal作业模板自动调用，请修改第[3]部分应用路径即可             #
# #运行方式2：【调度器】                                             #
#    调度器dsub提交命令,请修改 [1] 的调度器作业提交参数和 [3] 应用路径
#    然后在CLI节点参考以下命令提交作业：（注：脚本和参数用引号引起） #          
#    dsub -s '/share/script/ansys.sh 24 V13cg-1.dat V13cg-1geom.dat' #
######################################################################

#################### [1] 调度器脚本作业命令行提交参数 ################
#DSUB -aa
#DSUB -N 24
#DSUB -ex job
#DSUB --job_type cosched
#DSUB -oo /share/jobdata/ccs_cli/ansys_mechanical/output_%J_%I.log
#DSUB -eo /share/jobdata/ccs_cli/ansys_mechanical/error_%J_%I.log 
######################################################################

############################# 调试开关 ###############################
#
#env
######################################################################

######################## [2] 处理输入参数  ###########################
NP=$1
INPUT_FILE=$2
OTHER_FILE=$3
ln ${INPUT_FILE} .

if [ -f "${OTHER_FILE}" ];then
    ln ${OTHER_FILE} .
fi

HOSTLIST=`cat ${CCS_ALLOC_FILE} |awk '{print $1,$2}'|sed 's/agent/ragent/g' |sed 's/ /:/g' |tr '\n' ':'`
HOSTLIST=${HOSTLIST%:::}
######################################################################

############ [3] 自定义部分请根据实际情况修改 #######################

#应用命令所在目录按照实际路径修改
ANSYS_PATH="/share/software/apps/ansys/ansys_inc/v201/ansys/bin/ansys201"
######################################################################

######################## [4] 应用命令拼接  ###########################
RUN_CMD="${ANSYS_PATH} -b -dis -machines $HOSTLIST -np $NP -i ${INPUT_FILE}"
######################################################################

####################### [5] 应用命令执行及退出  ######################
echo $RUN_CMD
$RUN_CMD

ret=$?
if [ $ret -eq 8 ];then
    ret=0
fi
exit $ret
######################################################################
